#ifndef _PERSON_H_
#define _PERSON_H_

#include "Address.h"
#include "Date.h"

/**
 * Implementation of the class Person.
 */
class Person
{

public:
	Person();
	Person(string name, Address &address, Date &birthDate, unsigned int phone);
	virtual ~Person();

        // Name
	string getName() const;
	void setName(string name);

        // Address
	Address *getAddress() const;
	void setAdress(Address &address);

        // Date
	Date *getBirthDate() const;
	void setBirthDate(Date &birthDate);

        // Phone
	unsigned int getPhone() const;
	void setPhone(unsigned int phone);

        // I/O
        string printPerson();
        void newPerson(Person &person);

private:
	string name;
    unsigned int phone;
	Address *address;
	Date *birthDate;
};
#endif // _PERSON_H_
